﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data.MySqlClient;


namespace ordenes_servicio
{
    

    public partial class frm_login : Form
    {
        public static frm_login puntero_frm_login = null;
        public static MySqlConnection conexion;
        public static string servidor = "10.0.2.2";
        public static string base_datos = "ordenes";
        public static string usuario_bd = "ordenes";
        public static string clave_bd = "ord01";
        public static string string_conexion = string.Format("server={0};" + "database={1};" + "uid={2};" + "password={3};", servidor, base_datos, usuario_bd, clave_bd);



        public string usuario;
        

        public frm_login()
        {
            InitializeComponent();
        }

        private void btn_login_Click(object sender, EventArgs e)
        {
            try
            {
                if (login(txt_usuario.Text, txt_contraseña.Text))
                {
                    MessageBox.Show("Bienvenido " + txt_usuario.Text, "Ordenes", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                    puntero_frm_login = this;
                    frm_principal ventana_principal = new frm_principal();
                    this.Hide();
                    ventana_principal.Show();

                    txt_contraseña.Text = "";
                    txt_usuario.Text = "";


                }

                else
                {
                    MessageBox.Show("Usuario o contraseña incorrectos", "Error al iniciar sesión", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    txt_contraseña.Text = "";
                }
            }
            catch (SystemException ex)
            {
                String err = String.Format("Ocurrio un error interno. Es recomendable que cierre y vuelva a abrir la aplicación.\nInforme del error:\n\n{0}", ex.Message);
                MessageBox.Show(err, "Error inesperado",MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

        }
        private Boolean login(string u, string c)
        {
            Boolean res = false;
            try
            {
                conexion = new MySqlConnection(string_conexion);
                MySqlDataReader datar;
                string com = string.Format("select * from usuarios where username = '{0}' and clave = '{1}'",u,c);
                MySqlCommand cmd = new MySqlCommand(com, conexion);
                conexion.Open();
                datar = cmd.ExecuteReader();

                if (datar.Read())
                    res = true;

                conexion.Close();
            }
            catch (System.Exception ex)
            {

                String err = String.Format("Error interno al intentar iniciar sesión. Es recomendable que cierre y vuelva a abrir la aplicación.\nInforme del error:\n\n{0}", ex.Message);
                MessageBox.Show(err, "Error inesperado", MessageBoxButtons.OK, MessageBoxIcon.Error);
                res = false;
            }
            return res;
        }

   

        private void frm_login_FormClosing(object sender, FormClosingEventArgs e)
        {
            this.Dispose();
            this.Close();
        }

        private void frm_login_Load(object sender, EventArgs e)
        {

        }

        
    }
}
